home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / CRS / crs04.d81 / dcmr.sfx / printer.setup (.txt) < prev    next >
Commodore BASIC  |  1990-02-12  |  5KB  |  142 lines

  1. 1010 FORI=0TO71:POKE49808+I,0:NEXT:POKE49840,4
  2. 1100 OPEN15,8,15
  3. 1105 DIM C(15)
  4. 1110 POKE53280,14:POKE53281,15
  5. 1120 PRINT"[147][151]     DISK CATALOG MANAGER/REPORTER[146]"
  6. 1130 PRINT SPC(13);"PRINTER SETUP"
  7. 1135 GOSUB11000:REM LOAD A FILE ?
  8. 1140 D$=CHR$(PEEK(49840)+48)
  9. 1150 PRINT "DEVICE ADDR IS   ";D$;"[157][157][157]";:INPUTD
  10. 1160 IFD<0ORD>9 THEN1150
  11. 1170 POKE49840,D
  12. 1200 S$=STR$(PEEK(49841)):S$=MID$(S$,2,LEN(S$)-1)
  13. 1210 PRINT"SECONDARY ADDR IS   ";S$;:FORI=0TO1+LEN(S$):PRINT"[157]";:NEXT:INPUTS
  14. 1220 IFS<0ORS>95THEN1210
  15. 1230 POKE49841,S
  16. 1300 A$="N":IFPEEK(49842)=10THENA$="Y"
  17. 1305 PRINT"SEND LINE FEED AFTER RETURN FOR"
  18. 1307 PRINT"  EACH PRINT LINE (Y/N)   "A$;"[157][157][157]";
  19. 1310 INPUTA$:IFA$="N"THENPOKE49842,0:GOTO1400
  20. 1320 IFA$="Y"THENPOKE49842,10:GOTO1400
  21. 1330 GOTO1300
  22. 1400 PRINT"YOU MAY NOW ESTABLISH FROM 0 TO 4"
  23. 1410 PRINT"PRINTER SETUP SEQUENCES.  WHEN THE"
  24. 1420 PRINT"PRINT  FUNCTION IS SELECTED, YOU WILL"
  25. 1430 PRINT"BE GIVEN THE OPPORTUNITY TO SEND THESE"
  26. 1440 PRINT"PRINTER SETUP CHARACTERS BEFORE REPORT"
  27. 1450 PRINT"PRINTING BEGINS."
  28. 1460 PRINT"A COUPLE OF IDEAS ON HOW THESE MIGHT"
  29. 1470 PRINT"BE USED:"
  30. 1480 PRINT"   1)  CHANGE CHARACTER SETS"
  31. 1490 PRINT"   2)  CHANGE LINE SPACING"
  32. 1500 PRINT"FOR EACH OF THE 4 SEQUENCES, UP TO 8"
  33. 1510 PRINT"CHARACTERS CAN BE DEFINED.  FURTHER,"
  34. 1520 PRINT"FOR ANY ONE SEQUENCE, MULTIPLE PRINTER"
  35. 1530 PRINT"COMMANDS MAY BE ESTABLISHED BY"
  36. 1540 PRINT"ENTERING THEM CONSECUTIVELY."
  37. 1550 PRINT"PRINTER SETUP SEQUENCE TO DEFINE"
  38. 1560 PRINT"  (1-4; 0 TO END)   0[157][157][157]";
  39. 1570 INPUTA:IFA=0THEN1700
  40. 1580 IFA=1THENAD=49808:GOTO1630
  41. 1590 IFA=2THENAD=49816:GOTO1630
  42. 1600 IFA=3THENAD=49824:GOTO1630
  43. 1610 IFA=4THENAD=49832:GOTO1630
  44. 1620 GOTO1550
  45. 1630 MX=7:GOSUB9000:GOSUB9100:PRINT"  ";A$:PRINT"[145]";:IFLEN(A$)>39THENPRINT"[145]";
  46. 1640 L=LEN(A$):INPUTA$:IFLEN(A$)=L-2THEN1660
  47. 1650 PRINT"...TRY AGAIN":GOTO1630
  48. 1660 GOSUB9200:IFER=1THEN1650
  49. 1670 PRINT"OK":GOTO1550
  50. 1700 PRINT"[147]IF YOU DESIRE TO PRINT 6 COLUMNS PER"
  51. 1710 PRINT"PAGE, YOU WILL NEED TO ESTABLISH"
  52. 1720 PRINT"PRINTER SETUP SEQUENCES THAT WILL"
  53. 1730 PRINT"ACTIVATE AND CANCEL CONDENSED PRINT"
  54. 1740 PRINT"FORMAT (136 COLUMNS PER PRINT LINE)."
  55. 1750 PRINT"THE WAY IT WORKS IS:"
  56. 1760 PRINT"   1)  BEFORE EACH HEADING LINE"
  57. 1770 PRINT"       (INCLUDING THE 1ST), THE CANCEL"
  58. 1780 PRINT"       CONDENSED SETUP SEQUENCE WILL BE"
  59. 1790 PRINT"       SENT."
  60. 1800 PRINT"   2)  AFTER EACH HEADING LINE, THE"
  61. 1810 PRINT"       ACTIVATE CONDENSED SETUP "
  62. 1820 PRINT"       SEQUENCE WILL BE SENT."
  63. 1830 PRINT"       ...ANY KEY TO CONTINUE...";
  64. 1840 A$="":GETA$:IFA$=""THEN1840
  65. 1850 PRINT"[145][145][145][145][145]"
  66. 1900 MX=15:AD=49848:GOSUB9000:GOSUB9100
  67. 1910 PRINT"ENTER ACTIVATE CONDENSED SETUP SEQUENCE":PRINT"  ";A$:PRINT"[145]";
  68. 1920 IFLEN(A$)>39THENPRINT"[145]";
  69. 1930 L=LEN(A$):INPUTA$:IFLEN(A$)=L-2THEN1950
  70. 1940 PRINT"...TRY AGAIN":GOTO1900
  71. 1950 GOSUB9200:IFER=1THEN1940
  72. 1960 PRINT"OK"
  73. 2000 MX=15:AD=49864:GOSUB9000:GOSUB9100
  74. 2010 PRINT"ENTER CANCEL CONDENSED SETUP SEQUENCE":PRINT"  ";A$:PRINT"[145]";
  75. 2020 IF LEN(A$)>39THENPRINT"[145]";
  76. 2030 L=LEN(A$):INPUTA$:IFLEN(A$)=L-2THEN2050
  77. 2040 PRINT"...TRY AGAIN":GOTO2000
  78. 2050 GOSUB9200:IFER=1THEN2040
  79. 2060 PRINT"OK"
  80. 2100 PRINT"AS PART OF THIS SAVE OPERATION,"
  81. 2110 PRINT"IF FILE 'PRINT.CONFIG.OLD' EXISTS,"
  82. 2120 PRINT"IT WILL BE SCRATCHED."
  83. 2130 PRINT"THE CURRENT 'PRINTER.CONFIG' WILL BE"
  84. 2140 PRINT"RENAMED TO 'PRINT.CONFIG.OLD', AND THEN"
  85. 2150 PRINT"THE NEW PRINTER SETUP PARAMETERS"
  86. 2160 PRINT"WILL BE SAVED AS 'PRINTER.CONFIG'."
  87. 2170 PRINT"DO YOU WISH TO SAVE THIS CONFIGURATION"
  88. 2180 PRINT "AS 'PRINTER.CONFIG' (Y/N)   Y[157][157][157]";:INPUTA$
  89. 2190 IFA$="N"THEN2300
  90. 2200 IFA$<>"Y"THEN2170
  91. 2210 CLOSE15:OPEN15,8,15,"S0:PRINT.CONFIG.OLD":CLOSE15
  92. 2220 OPEN15,8,15,"R0:PRINT.CONFIG.OLD=PRINTER.CONFIG":CLOSE15:OPEN15,8,15,"I"
  93. 2230 N$="PRINTER.CONFIG":GOTO2500
  94. 2300 PRINT"DO YOU WISH TO SAVE AS AN ALTERNATE"
  95. 2310 PRINT"PRINTER CONFIGURATION (CFG.) FILE"
  96. 2320 PRINT"(Y/N)   N[157][157][157]";:INPUTA$
  97. 2330 IFA$="N"THENPRINT"...ABORTED":CLOSE15:END
  98. 2340 IFA$<>"Y"THEN2300
  99. 2350 PRINT"ENTER CONFIGURATION NAME TO SAVE"
  100. 2360 INPUT"   CFG.[157][157][157][157][157][157]";N$
  101. 2370 GOTO2500
  102. 2500 PRINT#15,"S0:";N$
  103. 2505 OPEN8,8,8,N$+",P,W"
  104. 2510 PRINT#8,CHR$(144);CHR$(194);
  105. 2520 FORI=0TO71:PRINT#8,CHR$(PEEK(49808+I));:NEXT
  106. 2530 CLOSE8:CLOSE15:PRINT"FINISHED SAVING":END
  107. 9000 A$=CHR$(34):FORI=0TOMX:C(I)=PEEK(AD+I):A1$=STR$(C(I)):A1=LEN(A1$)
  108. 9010 A$=A$+RIGHT$("00"+MID$(A1$,2,A1-1),3):IFI<MXTHENA$=A$+","
  109. 9020 NEXT:A$=A$+CHR$(34):RETURN
  110. 9100 PRINT"OVERTYPE THE FOLLOWING CHR$(NNN) CODES"
  111. 9110 PRINT"WITH THE DECIMAL EQUIVALENT OF THE"
  112. 9120 PRINT"CHARACTERS BEING SENT TO THE PRINTER."
  113. 9130 PRINT"SET RIGHT MOST UNUSED CHARACTER VALUES"
  114. 9140 PRINT"TO 000.":RETURN
  115. 9200 ER=0:A2=1:FORI=0TOMX:C(I)=VAL(MID$(A$,A2,3)):A2=A2+4
  116. 9210 IFC(I)<0ORC(I)>255THENER=1
  117. 9220 NEXT:IFER=1THENRETURN
  118. 9230 A2=0:FORI=MXTO0STEP-1:IFA2=1ANDC(I)=0THENER=1
  119. 9240 IFC(I)<>0THENA2=1
  120. 9250 NEXT:IFER=1THENRETURN
  121. 9260 FORI=0TOMX:POKE AD+I,C(I):NEXT:RETURN
  122. 10000 INPUT#15,EN,EM$,ET,ES
  123. 10010 IFEN=0THENRETURN
  124. 10020 PRINT"ERROR # ";EN,EM$,ET;ES
  125. 10030 PRINT#15,"I":RETURN
  126. 11000 PRINT"DO YOU WISH TO LOAD THE CURRENT"
  127. 11010 PRINT"   'PRINTER.CONFIG' FILE (Y/N)   N[157][157][157]";:INPUTA$:IFA$="N"THEN11100
  128. 11020 IFA$<>"Y"THEN11000
  129. 11030 N$="PRINTER.CONFIG":GOSUB11500:RETURN
  130. 11100 PRINT"DO YOU WISH TO LOAD AN ALTERNATE"
  131. 11110 PRINT"   PRINTER CONFIGURATION (CFG.) FILE"
  132. 11120 PRINT"   (Y/N)   N[157][157][157]";:INPUTA$
  133. 11130 IFA$="N"THENRETURN
  134. 11140 IFA$<>"Y"THEN11100
  135. 11150 PRINT"ENTER CONFIGURATION NAME TO LOAD":PRINT"   CFG.[157][157][157][157][157][157]";:INPUTN$
  136. 11160 GOSUB11500:RETURN
  137. 11500 OPEN8,8,8,N$+",P,R":GOSUB10000:IFEN<>0THENCLOSE8:RETURN
  138. 11510 GET#8,A$:GET#8,A1$:IFA$=CHR$(144)ANDA1$=CHR$(194)THEN11530
  139. 11520 PRINT"FILE ";N$;" IS INVALID":CLOSE8:RETURN
  140. 11530 FORI=0TO71:GET#8,A$:A=0:IFA$<>""THENA=ASC(A$)
  141. 11540 POKE49808+I,A:NEXT:CLOSE8:RETURN
  142.